A relation is similar to a label, but instead of having a text value it refers to another note.

Common use cases

Creating a relation using the visual editor

  1. Go to the Owned Attributes section in the Ribbon.
  2. Press the + button (Add new attribute) to the right.
  3. Select Add new relation for the relation.

While in the visual editor:

Creating a relation manually

In the Owned Attributes section in the Ribbon:

Predefined relations

These relations are supported and used internally by Trilium.

Label Description
runOn* See Events
template note's attributes will be inherited even without a parent-child relationship, note's content and subtree will be added to instance notes if empty. See documentation for details.
inherit note's attributes will be inherited even without a parent-child relationship. See Templates for a similar concept. See Attribute Inheritance in the documentation.
renderNote notes of type Render Note will be rendered using a code note (HTML or script) and it is necessary to point using this relation to which note should be rendered
widget_relation target of this relation will be executed and rendered as a widget in the sidebar
shareCss CSS note which will be injected into the share page. CSS note must be in the shared sub-tree as well. Consider using share_hidden_from_tree and share_omit_default_css as well.
shareJs JavaScript note which will be injected into the share page. JS note must be in the shared sub-tree as well. Consider using share_hidden_from_tree.
shareTemplate Embedded JavaScript note that will be used as the template for displaying the shared note. Falls back to the default template. Consider using share_hidden_from_tree.
shareFavicon Favicon note to be set in the shared page. Typically you want to set it to share root and make it inheritable. Favicon note must be in the shared sub-tree as well. Consider using share_hidden_from_tree.